from flask import current_app
from flask_script import  Manager
from flask_migrate import  Migrate,MigrateCommand
from Info import creat_app, db , models

# 工厂方法
from Info.models import User

app = creat_app('development')
# 五 迁移 flask_script  flask_migrate
manager = Manager(app)
Migrate(app,db)
manager.add_command('db',MigrateCommand)
@manager.option('-u','--username',dest ='username')
@manager.option('-p','--password',dest='password')
def createsuperuser(username,password):
    if not all([username,password]):
        print('参数不全')
    user = User()
    user.nick_name = username
    user.mobile = username
    user.password = password
    user.is_admin = True
    try:
        db.session.add(user)
        db.session.commit()
    except Exception as e:
        db.session.rollback()
        current_app.logger.error(e)
        print('添加失败')
    print('成功添加管理员账号')

if __name__ == '__main__':
    # print(app.url_map)
    manager.run()